module.exports = {
  publicPath: './',
  chainWebpack: config => {
    // 生产模式
    config.when(process.env.NODE_ENV === 'production', config => {
      config.entry('app').clear().add('./src/main-prod.js')
      // 导入cdn
      config.set('externals', {
        vue: 'Vue',
        'vue-router': 'VueRouter',
        'perfect-scrollbar': 'PerfectScrollbar',
        'element-ui': 'ELEMENT',
        axios: 'axios',
        vuex: 'Vuex',
        'js-md5': 'md5'
      })
      // 设定自定义属性
      config.plugin('html').tap(args => {
        args[0].isProd = true
        return args
      })
    })
    // 开发模式
    config.when(process.env.NODE_ENV === 'development', config => {
      config.entry('app').clear().add('./src/main-dev.js')
      // 设定自定义模式
      config.plugin('html').tap(args => {
        args[0].isProd = false
        return args
      })
    })
  },
  configureWebpack: {
    resolve: {
      alias: {
        'assets': '@/assets',
        'components': '@/components',
        'views': '@/views',
        'utils': '@/utils'
      }
    }
  }
}